package br.ufrj.dcc.comp2.musica.modelo;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashSet;

public class Turma implements Serializable{

	private static final long serialVersionUID = 1L;
	
	private String codigo;
	private String disciplina;
	private PeriodoLetivo periodo;
	private short vagas;
	private ArrayList<SolicitacaoInscricao> filaSolicitacoes;
	private HashSet<String> alunosInscritos;
	private Professor professor;
	private ArrayList<Horario> horarios;
	
	public Turma(Object codigo) {
		this.codigo = (String) codigo;
		System.out.println(this.codigo);
	}

	public Turma(String codigo, String disciplina, PeriodoLetivo periodo,
			short vagas, Curso curso, Professor professor,
			ArrayList<Horario> horarios) {
		super();
		this.codigo = codigo;
		this.disciplina = disciplina;
		this.periodo = periodo;
		this.vagas = vagas;
		this.professor = professor;
		this.horarios = horarios;
		filaSolicitacoes = new ArrayList<SolicitacaoInscricao>();
		alunosInscritos = new HashSet<String>();
	}

	public String getCodigo() {
		return codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

	public String getDisciplina() {
		return disciplina;
	}

	public void setDisciplina(String disciplina) {
		this.disciplina = disciplina;
	}

	public PeriodoLetivo getPeriodo() {
		return periodo;
	}

	public void setPeriodo(PeriodoLetivo periodo) {
		this.periodo = periodo;
	}

	public short getVagas() {
		return vagas;
	}

	public void setVagas(short vagas) {
		this.vagas = vagas;
	}

	public ArrayList<SolicitacaoInscricao> getFilaSolicitacoes() {
		return filaSolicitacoes;
	}

	public void setFilaSolicitacoes(
			ArrayList<SolicitacaoInscricao> filaSolicitacoes) {
		this.filaSolicitacoes = filaSolicitacoes;
	}

	public HashSet<String> getAlunosInscritos() {
		return alunosInscritos;
	}

	public void setAlunosInscritos(HashSet<String> alunosInscritos) {
		this.alunosInscritos = alunosInscritos;
	}

	public Professor getProfessor() {
		return professor;
	}

	public void setProfessor(Professor professor) {
		this.professor = professor;
	}

	public ArrayList<Horario> getHorarios() {
		return horarios;
	}

	public void setHorario(ArrayList<Horario> horarios) {
		this.horarios = horarios;
	}
}
